<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<div id="watcher">
			<p>
				ask a yes/no question:
				<input v-model="question" />
			</p>
			<p>{{answer}}</p>
		</div>
	</body>
	<script src="https://unpkg.com/axios@0.12.0/dist/axios.min.js"></script>
	<script src="https://unpkg.com/lodash@4.13.1/lodash.min.js"></script>
	<script type="text/javascript">
		var watchVM = new Vue({
			el:"#watcher",
			data:{
				question:'',
				answer:'I cannot give you an answer until you ask a question!'
			},
			watch:{
				question:function(newQuestion){
					this.answer = 'Waiting for you to stop typing...'
					this.getAnswer()
				}
			},
			methods:{
				getAnswer:_.debounce(
					function(){
						var vm = this
						if(this.question.indexOf('?')=== -1){
							vm.answer = 'questions usually contain a question mark.;'
							return
						}
						vm.answer = 'Thinking...'
						axios.get('https://yesno.wtf/api')
							.then(function(response){
								vm.answer = _.capitalize(response.data.answer)
							})
							.catch(function (error){
								vm.answer = 'Error!Could not reach the API.'+error
							})
					},
					//为用户停止输入等待的毫秒数
					500
				)
			}
		})
	</script>
</html>
